package com.softeem.music_sys.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.softeem.music_sys.comm.Result;
import com.softeem.music_sys.entity.Singer;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
* @author RD
* @description 针对表【singer(歌手信息表)】的数据库操作Service
* @createDate 2025-11-07 11:19:17
*/
public interface SingerService extends IService<Singer> {

    /**
     * 添加歌手
     */
    Result addSinger(Singer singer);

    /**
     * 根据ID获取歌手
     */
    Result getSingerById(Integer id);

    /**
     * 更新歌手
     */
    Result updateSinger(Singer singer);

    /**
     * 删除歌手
     */
    Result deleteSinger(Integer id);

    /**
     * 获取歌手列表
     */
    Page<Singer> getSingerList(Integer page, Integer limit);

    /**
     * 根据类型获取歌手
     */
    Page<Singer> getSingersByType(String type, Integer page, Integer limit);

    /**
     * 根据标签搜索歌手
     */
    Page<Singer> getSingersByTag(String tag, Integer page, Integer limit);

    /**
     * 搜索歌手
     */
    Page<Singer> searchSingers(String keyword, Integer page, Integer limit);

    /**
     * 更新歌手状态
     */
    Result updateSingerStatus(Integer id, Integer status);
}